/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package Estacionamento.Negocio;

import Estacionamento.ClassesBasicas.Cliente;
import Estacionamento.ClassesBasicas.Veiculo;
import Estacionamento.DAOEspecifico.DAOVeiculo;
import java.util.ArrayList;
import java.util.List;
import java.lang.String;
import javax.swing.JOptionPane;

/**
 *
 * @author italo.valenca
 */
public class VeiculoNegocio {

    private String placaLet, placaNumero;

    public void cadastrarVeiculo(Veiculo vei) throws Exception {
        DAOVeiculo info = new DAOVeiculo();
        Veiculo veiculo = new Veiculo();
        List<Veiculo> listasDeVeiculo = info.listar();
        for (Veiculo listaDeveiculo : listasDeVeiculo) {
            if ((listaDeveiculo.getPlacaLetra() == vei.getPlacaLetra()) && (listaDeveiculo.getPlacaNum() == vei.getPlacaNum())) {
                veiculo = listaDeveiculo;
                placaLet = veiculo.getPlacaLetra();
                placaNumero = veiculo.getPlacaNum();
            }
        }
        if ((veiculo.getPlacaLetra() == null) || (veiculo.getPlacaNum() == null)) {
            info.cadastrar(vei);
            JOptionPane.showMessageDialog(null, "Veiculo cadastrado com sucesso");
        } else {
            JOptionPane.showMessageDialog(null, "Veiculo já existente: " + placaLet + "-" + placaNumero);

        }
    }

    public Veiculo listarVeiculo(String placaLetras, String placaNumero) throws Exception {
        DAOVeiculo info = new DAOVeiculo();
        Veiculo veiculo = new Veiculo();
        List<Veiculo> listaDeVeiculo = info.listar();
        for (int i = 0; i < listaDeVeiculo.size(); i++) {
            if ((listaDeVeiculo.get(i).getPlacaLetra().equals(placaLetras)) && (listaDeVeiculo.get(i).getPlacaNum().equals(placaNumero))) {
                veiculo = listaDeVeiculo.get(i);
            }
        }
        return veiculo;
    }

    public void excluirVeiculo(Veiculo vei) throws Exception {
        DAOVeiculo info = new DAOVeiculo();
        Veiculo veiculoLista = this.listarVeiculo(vei.getPlacaLetra(), vei.getPlacaNum());
        if ((veiculoLista.getPlacaLetra() == null) || (veiculoLista.getPlacaNum() == null)) {
            JOptionPane.showMessageDialog(null, "Veiculo não cadastrado");
        } else {
            info.excluir(veiculoLista);
            JOptionPane.showMessageDialog(null, "Cliente excluído com sucesso!");
        }
    }

    public void alterarVeiculo(Veiculo vei) throws Exception {
        DAOVeiculo info = new DAOVeiculo();
        info.alterar(vei);
    }
    /*
     public List<Veiculo> listarVeiculoPorCliente(Cliente cli) throws Exception {
     DAOVeiculo info = new DAOVeiculo();
     return info.ListarVeiculoPorCliente(cli);
     }*/
}
